/*
 * 
 * Libman
 * 
 * Daniel Kaufmann, Martin Lang, Simon Moosbrugger,
 * Stefan Mayer, Stephan Halbeisen
 * 
 */
package application.server;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.rmi.server.ServerNotActiveException;
import java.util.List;

import middleware.datacontainer.searchclient.ClientContainer;
import application.exceptions.InsufficientClientRightsException;
import application.exceptions.SessionException;

/**
 * The Interface ClientSearchRemote.
 */
public interface ClientSearchRemote extends Remote {
	
	/**
	 * Search client.
	 * 
	 * @param searchPattern
	 *            the search pattern
	 * @return the array list
	 * @throws RemoteException
	 *             the remote exception
	 */
	public abstract List<ClientContainer> searchClient(String sessionId, String searchPattern)
			throws RemoteException, SessionException, InsufficientClientRightsException, ServerNotActiveException ;

}
